NavCom is a simple MultiFinder background application. It is intended to provide interesting ambience to a Mac screen by giving the illusion that a lot of things are going on. NavCom creates small, 32x32 pixel windows, up to 30 of them (though I recommend more like 4-6).
You get new windows with the New Window command (surprise!). You can position them around the screen. Try making them adjacent; you can make a 2x2 collection that looks just like one window with four sub-panes (or 2x3, or 1x4, or ...). The windows usually work best at the edges of the screen so that application windows leave them visible.
Once you've got the windows where you want them, use the Save Window Positions command to save their positions in the "NavCom Positions" file. When NavCom comes up, it looks for this file and creates and positions windows according to it. (This is particularly useful if you have NavCom launched automatically by MultiFinder on start-up.) You can reposition windows within NavCom, and write a new positions file. You can't, however, reduce the number of windows that are active. But you can just trash the "NavCom Positions" file and start over.
NavCom will use color if you've got it, but it works fine in black & white if you don't. It will also work under SingleFinder, but isn't quite as interesting that way.
NavCom started long long ago when I first saw 2001: A Space Odessy, in 1968. It was a neat film, but neatest of all were the displays in the spacecraft that kept flashing up information all the time. They really gave a feeling of lots of heavy technical stuff going on all the time automatically. Ever since, I've wanted displays like that of my own.
At work at Apple, I was working on a background application for another purpose. Once I had the basic background stuff worked out (not very hard), I realized that I was within striking distance of my long-awaited background displays. I started working on it Friday night. Three or four hours later I had the basic program working. By the end of the weekend, NavCom 1.0.
NavCom has no redeeming social value that I can detect. However, just to prove that nothing is totally worthless, here are some uses for it: making computer-naive people think your system is incredibly advanced and sophisticated; giving people a taste of the future, when agents and other autonomous processes are constantly running around doing things behind your back; justifying that color monitor you bought but don't have any applications that use.
NavCom is the sort of program that you can hack at forever, adding little pieces at a time. Given that, I expect there'll be a 1.1, 1.2, 2.0., etc., etc. But I don't promise anything.
Needless to say, NavCom is free. Give it to anyone. Enjoy.
NavCom 1.1
Harry R. Chesley
3/6/89
This version of NavCom straggled in over the couple of weeks following 1.0. It adds several new displays, including (as I call them) "core dump," "bifurcation," "perspective grid," and "icons."
Since 1.0 went out, I've gotten a lot of suggestions for new features. I've plenty enough to keep me programming away on this project for the next six to twelve months. But I'm afraid I have to do some real work for a change (if you can call the Net News reader stack work), so I'm going to freeze it here for a bit. But, like I said before, there'll probably always be that one more feature I want to add...
A few comments about the program and the suggestions:
Besides the original 2001 aesthetic, there have been a couple of guiding principles that I've followed in choosing displays for NavCom: First, 90% of the displays are generated randomly — that is, not just which display, but the contents of the display. The only exceptions are the blank displays and now the icon displays. I think this makes the whole thing seem much deeper. Second, I haven't done anything that takes much time to compute or display. Remember, this thing runs in the background and could get in the way of your keystrokes and such, so I left out stuff like animation, even though it'd be great to have it. Third, I haven't done anything to explicitly allow user configuration (except, of course, window positioning). This may come in in a future version, but it's obviously a large black hole and I didn't want to get sucked into it right now.
Two or three people suggested adding sound. The best suggestion was to provide the background rumble of the spaceship's engines. I'll have to think about that one. I've never done much with sound, and don't know how well it works in MultiFinder, or how much it might impact other applications, or how hard it would be to generate continuous sound from the background, or ...
Several people wanted to be able to add their own icons for displays. This version allows that, but you have to use ResEdit to do it. One display type draws icons. It picks a random icon starting at id 1000. All icons must be numbered contiguously from 1000 up. Please don't distribute copies that you've added icons to. It'll only confuse everyone.
More interaction has been suggested by a couple of people. That's not exactly the point of NavCom, of course, but I'm thinking about it.
One person asked for the source code. I'm not going to give that out at this point. It's not that I consider it a great personal secret or asset. I just don't want to have to spend the time to clean it up to the point that I won't be embarrassed by it. Nor do I want multiple versions of NavCom floating around. It's too confusing. Later on, when I have more free time, maybe I'll clean it up and let it out.